package com.bird.设计模式.结构型.外观模式;

/**
 * @data 2022/3/14 15:18
 * @author: bird
 * @description: 测试外观模式
 */
public class Test {
    public static void main(String[] args) {
        PointGift pointGift = new PointGift("礼物");
        GiftExchangeService giftExchangeService = new GiftExchangeService();
        giftExchangeService.giftExchange(pointGift);
    }
}
/*
* 结论：
* 外观模式 符合迪米特原则,即最少知道原则。不符合开闭原则。
*  如果一个业务场景长时间的不变的情况下 那么可以使用外观类。如果业务场景经常变更的话
*  那么可以使用抽奖类替换外观类。这样的话方便扩展。
*
* 外观模式的行为比较简单 就是提供一个类(或者是抽象类) 统一的管理子系统的各自负责的业务
* 外界不与子系统交互 只与这个外观对象交互。
* */